﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using AjaxControlToolkit;
using BussinessLogic;

namespace SchoolManagement.Forms.Controls
{
    public partial class ControlPersona : System.Web.UI.UserControl
    {



        protected void Page_Load(object sender, EventArgs e)
        {

        }


        public bool MostrarFoto
        {
            get { return PanelFoto.Visible; }
            set { PanelFoto.Visible = value; }
        }





        /// <summary>
        /// Fija los datos de la persona Actual
        /// </summary>
        /// <param name="persona"></param>
        public void SetPersona(Persona persona)
        {
            TextBoxCodigo.Text = persona.Codigo;
            TextBoxCelular.Text = persona.Celular;
            TextBoxDireccion.Text = persona.Direccion;
            TextBoxFecha.Text = persona.FechaNacimiento.ToString("MMMM, dd, yyyy");
            TextBoxMail.Text = persona.Email;
            TextBoxPApellido.Text = persona.PrimerApellido;
            TextBoxPNombre.Text = persona.PrimerNombre;
            TextBoxSApellido.Text = persona.SegundoApellido;
            TextBoxSNombre.Text = persona.SegundoNombre;
            TextBoxTelefono.Text = persona.TelefonoFijo;

            // TODO  Funcion para traer lugar Nac, Expedicion y TipoDocumento
            DropDownListTipoDocumento.SelectedIndex = persona.TipoDocumento; // 0,1,2
            if (persona.LugarExpedicion > 0)
            {
                Session["IdLugarExpedicionEstudiante"] = persona.LugarExpedicion;
                LinkButtonExpedicion.Text = ControlLugarExpedicion.CalcularDescripcionLugarById(persona.LugarExpedicion
                    );
            }
            if (persona.LugarNacimiento > 0)
            {
                Session["IdLugarNacimientoEstudiante"] = persona.LugarNacimiento;
                LinkButtonNacimiento.Text = ControlLugarNacimiento.CalcularDescripcionLugarById(persona.LugarNacimiento
                    );
            }
        }

        /// <summary>
        /// 
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void LinkButtonExpedicion_Click(object sender, EventArgs e)
        {
            int idLe = int.Parse(Session["IdLugarExpedicionEstudiante"].ToString());
            int? idControlActual = ControlLugarExpedicion.IdMunicipio;
            if (!idControlActual.HasValue)
            {
                ControlLugarExpedicion.FillDescripcionLugar(idLe);
            }
            LinkButtonExpedicion.Text = ControlLugarExpedicion.CalcularDescripcionLugar("IdLugarExpedicionEstudiante");
        }

        /// <summary>
        /// 
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void LinkButtonNacimiento_Click(object sender, EventArgs e)
        {
            int idLn = int.Parse(Session["IdLugarNacimientoEstudiante"].ToString());
            int? idControlActual = ControlLugarNacimiento.IdMunicipio;
            if (!idControlActual.HasValue)
            {
                ControlLugarNacimiento.FillDescripcionLugar(idLn);
            }
            LinkButtonNacimiento.Text = ControlLugarNacimiento.CalcularDescripcionLugar("IdLugarNacimientoEstudiante");
        }
    }
}